Instrumenting Android and Java Applications as Easy as abc

نویسندگان

  • Steven Arzt
  • Siegfried Rasthofer
  • Eric Bodden
چکیده

Program instrumentation is a widely used mechanism in different software engineering areas. It can be used for creating profilers and debuggers, for detecting programming errors at runtime, or for securing programs through inline reference monitoring. This paper presents a tutorial on instrumenting Android applications using Soot and the AspectBench compiler (abc). We show how two wellknown monitoring languages –Tracematches and AspectJ– can be used for instrumenting Android applications. Furthermore, we also describe the more flexible approach of manual imperative instrumentation directly using Soot’s intermediate representation Jimple. In all three cases no source code of the target application is required.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Comparing Android Applications to Find Copying

The Android smartphone operating system includes a Java virtual machine that enables rapid development and deployment of a wide variety of applications. The open nature of the platform means that reverse engineering of applications is relatively easy, and many developers are concerned as applications similar to their own show up in the Android marketplace and want to know if these applications ...

متن کامل

Two-factor Protection Scheme in Securing the Source Code of Android Applications

While Android has become most popular OS in mobile phone market, more and more Android app developers are suffering from intellectual property infringement because it’s easy to extract the assets stored in the Android apps and to decompile Android apps to Java source code. This issue also poses threats to users’ privacy. In this article we reviewed the existing protection approaches for the pro...

متن کامل

Security Analysis of Permission-Based Systems using Static Analysis: An Application to the Android Stack

In recent years, mobile devices, such as smart phones, have spread at an exponential rate. The most used system running on these devices, accounting for almost 80% of market share for smart phones world-wide, is the Android software stack. This system runs Android applications that users download from an application market. The system is called a permission-based system since it limits access t...

متن کامل

Developing and Benchmarking Native Linux Applications on Android

Smartphones get increasingly popular where more and more smartphone platforms emerge. Special attention was gained by the open source platform Android which was presented by the Open Handset Alliance (OHA) hosting members like Google, Motorola, and HTC. Android uses a Linux kernel and a stripped-down userland with a custom Java VM set on top. The resulting system joins the advantages of both en...

متن کامل

Porting the Renew Petri Net Simulator to the Operating System Android

This article describes the steps to identify, extract and adapt the core parts of the Renew simulator in order to make them usable on an Android-powered device. As Renew is build in Java and has a plugin-architecture, a few plugins have to be adapted to get a working Petri net simulator for the operating system Android, which applications are widely written in Java. The result of this work is a...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2013